/* stylelint-disable */
.geEditor {
  border: none;
  font-size: 14px;
  margin: 0;
}

.geEditor input[type='text']::-ms-clear {
  display: none;
}

.geEditor input,
.geEditor select,
.geEditor textarea,
.geEditor button {
  font-size: inherit;
}

.geEditor input {
  border-width: 1px;
}

.geEditor input[name='format-formatpanel'] {
  margin-top: 1px;
}

.geEditor select {
  border-width: 1px;
}

.geEditor div.mxTooltip {
  background: whitesmoke;
  border-color: lightgray;
  color: black;
  font-size: 11px;
  padding: 6px;
}

.geMenubarContainer .geItem,
.geToolbar .geButton,
.geToolbar .geLabel {
  cursor: pointer !important;
}

.geSidebarContainer .geTitle {
  cursor: default !important;
}

.geBackgroundPage {
  box-shadow: 0 0 2px 1px #d1d1d1;
}

.geSidebarContainer a,
.geMenubarContainer a,
.geToolbar a {
  color: #000;
  text-decoration: none;
}

.geMenubarContainer,
.geToolbarContainer,
.geDiagramContainer,
.geSidebarContainer,
.geFooterContainer,
.geHsplit,
.geVsplit {
  cursor: default;
  overflow: hidden;
  position: absolute;
}

.geFormatContainer {
  border-left: 1px solid #dadce0;
  font-size: 12px;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

.geSidebarFooter {
  border-top: 1px solid #dadce0;
}

.geFormatSection {
  border-bottom: 1px solid #dadce0;
  border-color: #dadce0;
}

.geDiagramContainer {
  background-color: #fff;
  font-size: 0;
  outline: none;
}

.geMenubar,
.geToolbar {
  display: block;
  white-space: nowrap;
  width: 100%;
}

.geMenubarContainer .geItem,
.geToolbar .geButton,
.geToolbar .geLabel,
.geSidebar,
.geSidebarContainer .geTitle,
.geSidebar .geItem,
.mxPopupMenuItem {
  transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}

.geHint {
  background-color: #fff;
  border: 1px solid gray;
  border-radius: 3px;
  box-shadow: 1px 1px 2px 0 #ddd;
  box-shadow: 1px 1px 2px 0 #ddd;
  box-shadow: 1px 1px 2px 0 #ddd;
  filter: alpha(opacity=80);
  font-size: 9pt;
  opacity: 0.8;
  padding: 4px 16px;
}

.geStatusAlert {
  background-color: #f2dede;
  border: 1px solid #ebccd1;
  border-radius: 3px;
  color: #a94442 !important;
  font-size: 12px;
  margin-top: -5px;
  padding: 4px 6px;
  white-space: nowrap;
}

.geStatusAlert:hover {
  background-color: #f1d8d8;
  border-color: #d6b2b8;
}

.geStatusMessage {
  background: linear-gradient(to bottom, #dff0d8 0, #c8e5bc 100%);
  background: linear-gradient(to bottom, #dff0d8 0, #c8e5bc 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));
  background: linear-gradient(to bottom, #dff0d8 0, #c8e5bc 100%);
  background-repeat: repeat-x;
  border: 1px solid #b2dba1;
  border-radius: 3px;
  color: #3c763d !important;
  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
  font-size: 12px;
  margin-top: -5px;
  padding: 4px 6px;
  white-space: nowrap;
}

.geAlert {
  background-color: #f2dede;
  border: 1px solid #ebccd1;
  border-radius: 3px;
  box-shadow: 2px 2px 3px 0 #ddd;
  box-shadow: 2px 2px 3px 0 #ddd;
  box-shadow: 2px 2px 3px 0 #ddd;
  color: #a94442;
  padding: 14px;
  position: absolute;
  white-space: nowrap;
}

.geBtn,
.mxWindow .geBtn {
  background-color: #f5f5f5;
  background-image: none;
  border: 1px solid #d8d8d8;
  border-radius: 2px;
  color: #333;
  cursor: default;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  height: 29px;
  letter-spacing: 0.25px;
  line-height: 27px;
  margin: 0 0 0 8px;
  min-width: 72px;
  outline: 0;
  padding: 0 8px;
}

.geBtn:hover,
.geBtn:focus {
  background-color: #f8f8f8;
  background-image: linear-gradient(#f8f8f8 0, #f1f1f1 100%);
  border: 1px solid #c6c6c6;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
  color: #111;
}

.geBtn:active,
.geStatus:active {
  opacity: 0.7;
}

.geBtn:disabled {
  opacity: 0.5;
}

.geToolbarContainer > .geToolbar > div > a:active {
  opacity: 0.5;
}

.geBtnUp {
  background-image: url();
  background-position: center center;
  background-repeat: no-repeat;
}

.geBtnUp:active {
  background-color: #4d90fe;
  background-image: linear-gradient(#4d90fe 0, #357ae8 100%);
}

.geBtnDown {
  background-image: url();
  background-position: center center;
  background-repeat: no-repeat;
}

.geBtnDown:active {
  background-color: #4d90fe;
  background-image: linear-gradient(#4d90fe 0, #357ae8 100%);
}

.geColorBtn {
  background-color: #f5f5f5;
  background-image: linear-gradient(#f5f5f5 0, #e1e1e1 100%);
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 4px;
  color: #333;
  cursor: default;
  cursor: pointer;
  margin: 0;
  outline: 0;
  padding: 0;
}

.geColorBtn:hover {
  border: 1px solid rgba(0, 0, 0, 0.7);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
}

.geColorBtn:active {
  background-color: #4d90fe;
  background-image: linear-gradient(#4d90fe 0, #357ae8 100%);
  border: 1px solid #2f5bb7;
  color: #fff;
}

.geColorBtn:disabled {
  opacity: 0.5;
}

.gePrimaryBtn,
.mxWindow .gePrimaryBtn {
  background-color: #4d90fe;
  background-image: linear-gradient(#4d90fe 0, #4787ed 100%);
  border: 1px solid #3079ed;
  color: #fff;
}

.gePrimaryBtn:hover,
.gePrimaryBtn:focus {
  background-color: #357ae8;
  background-image: linear-gradient(#4d90fe 0, #357ae8 100%);
  border: 1px solid #2f5bb7;
  color: #fff;
}

.gePrimaryBtn:disabled {
  opacity: 0.5;
}

.geAlertLink {
  color: #843534;
  font-weight: 700;
  text-decoration: none;
}

.geActivePage {
  color: #188038 !important;
  font-weight: bold;
}

.geMenubarContainer,
.geToolbarContainer,
.geHsplit,
.geVsplit {
  background-color: #fbfbfb;
}

.geMenubar {
  padding: 0 2px;
  vertical-align: middle;
}

.geMenubarContainer .geItem,
.geToolbar .geItem {
  cursor: default;
  padding: 6px 6px 6px 9px;
}

.geMenubarContainer .geItem:hover {
  background: #eee;
  border-radius: 2px;
}

.geMenubarContainer .geItem:active {
  background: #f8c382;
}

.geToolbarContainer .geButton:hover {
  background: #eee;
  border-radius: 2px;
  opacity: 1;
}

.geToolbarContainer .geButton:active,
.geToolbarContainer .geLabel:active {
  background: #f8c382;
}

.geToolbarContainer .geLabel:hover {
  background: #eee;
  border-radius: 2px;
}

.geToolbarButton {
  opacity: 0.6;
}

.geToolbarButton:active {
  opacity: 0.2;
}

.mxDisabled:hover {
  background: inherit !important;
}

.geMenubar a.geStatus {
  color: #888;
  cursor: default !important;
  display: inline-block;
  padding-left: 12px;
}

.geMenubar a.geStatus:hover {
  background: transparent;
}

.geToolbarContainer {
  border-bottom: 1px solid #dadce0;
}

.geSidebarContainer .geToolbarContainer {
  background: transparent;
  border-bottom: none;
}

.geSidebarContainer button {
  overflow: hidden;
  text-overflow: ellipsis;
}

.geToolbar {
  border-top: 1px solid #dadce0;
  box-shadow: inset 0 1px 0 0 #fff;
  box-shadow: inset 0 1px 0 0 #fff;
  box-shadow: inset 0 1px 0 0 #fff;
  padding: 1px 0 0 6px;
  padding-top: 5px;
}

.geToolbarContainer .geSeparator {
  background: #e5e5e5;
  float: left;
  height: 20px;
  margin-left: 6px;
  margin-right: 6px;
  margin-top: 4px;
  width: 1px;
}

.geToolbarContainer .geButton {
  border: 1px solid transparent;
  cursor: pointer;
  float: left;
  height: 20px;
  margin: 2px;
  opacity: 0.6;
  padding: 0 2px 4px;
  width: 20px;
}

div.mxWindow .geButton {
  margin: -1px 2px 2px;
  padding: 1px 2px 2px 1px;
}

.geToolbarContainer .geLabel {
  border: 1px solid transparent;
  cursor: pointer;
  float: left;
  margin: 2px;
  padding: 3px 5px;
}

.geToolbarContainer .mxDisabled:hover {
  border: 1px solid transparent !important;
  filter: alpha(opacity=20) !important;
  opacity: 0.2 !important;
}

.geDiagramBackdrop {
  background-color: #f8f9fa;
}

.geSidebarContainer {
  background: #fbfbfb;
  overflow: hidden;
  overflow: auto;
  position: absolute;
}

.geTabContainer {
  background-color: #f1f3f4;
  border-top: 1px solid #e5e5e5;
}

.geSidebar {
  border-bottom: 1px solid #e5e5e5;
  overflow: hidden;
  padding: 6px;
  padding-bottom: 6px;
  padding-left: 10px;
}

.geSidebarContainer .geTitle {
  border-bottom: 1px solid #e5e5e5;
  cursor: default;
  display: block;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4em;
  margin: 0;
  overflow: hidden;
  padding: 8px 0 8px 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.geSidebarContainer .geTitle:hover {
  background: #eee;
  border-radius: 2px;
}

.geSidebarContainer .geTitle:active {
  background-color: #f8c382;
}

.geSidebarContainer .geDropTarget {
  border: 2px dotted #b0b0b0;
  border-radius: 10px;
  color: #a0a0a0;
  margin: 6px;
  padding: 6px;
  text-align: center;
}

.geTitle img {
  opacity: 0.5;
}

.geTitle img:hover {
  opacity: 1;
}

.geTitle .geButton {
  border: 1px solid transparent;
  border-radius: 2px;
  padding: 3px;
}

.geTitle .geButton:hover {
  border: 1px solid gray;
}

.geSidebar .geItem {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  border-radius: 8px;
  display: inline-block;
}

.geSidebar .geItem:hover {
  background-color: #e0e0e0;
}

.geItem {
  display: inline-block;
  vertical-align: top;
}

.geSidebarTooltip {
  background: #fbfbfb;
  border-radius: 6px;
  box-shadow: 0 2px 6px 2px rgba(60, 64, 67, 0.15);
  overflow: hidden;
  position: absolute;
}

.geFooterContainer {
  background: #e5e5e5;
  border-top: 1px solid #c0c0c0;
}

.geFooterContainer a {
  box-sizing: border-box;
  color: #235695;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
  white-space: nowrap;
  width: 100%;
}

.geFooterContainer table {
  border-collapse: collapse;
  margin: 0 auto;
}

.geFooterContainer td {
  border-left: 1px solid #c0c0c0;
  border-right: 1px solid #c0c0c0;
}

.geFooterContainer td:hover {
  background-color: #b3b3b3;
}

.geHsplit {
  background-image: url();
  background-position: center center;
  background-repeat: no-repeat;
  cursor: col-resize;
}

.geVsplit {
  background-image: url();
  background-position: center center;
  background-repeat: no-repeat;
  cursor: row-resize;
  font-size: 1pt;
}

.geHsplit {
  border-left: 1px solid #e5e5e5;
  border-right: 1px solid #e5e5e5;
}

.geVSplit {
  border-bottom: 1px solid #e5e5e5;
  border-top: 1px solid #e5e5e5;
}

.geHsplit:hover,
.geVsplit:hover {
  background-color: #e0e0e0;
}

.geDialog {
  background: white;
  border: 1px solid #acacac;
  box-shadow: 0 0 2px 2px #d5d5d5;
  box-shadow: 0 0 2px 2px #d5d5d5;
  box-shadow: 0 0 2px 2px #d5d5d5;
  line-height: 1em;
  overflow: hidden;
  padding: 30px;
  position: absolute;
  z-index: 2;
}

.geTransDialog {
  overflow: hidden;
  padding: 30px;
  position: absolute;
  z-index: 2;
}

.geDialogClose {
  cursor: pointer;
  height: 9px;
  opacity: 0.5;
  position: absolute;
  width: 9px;
}

.geDialogClose:hover {
  opacity: 1;
}

.geDialogTitle {
  background: rgb(229, 229, 229);
  border-bottom: 1px solid rgb(192, 192, 192);
  box-sizing: border-box;
  color: rgb(35, 86, 149);
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
}

.geDialogFooter {
  background: whitesmoke;
  border-top: 1px solid #e5e5e5;
  box-sizing: border-box;
  color: darkgray;
  text-align: right;
  white-space: nowrap;
}

.geSprite {
  background: url('') no-repeat;
  height: 21px;
  width: 21px;
}

.geBaseButton {
  background-color: #ececec;
  background-image: linear-gradient(#ececec 0%, #fcfcfc 100%);
  border: 1px solid #c0c0c0;
  border-radius: 6px;
  cursor: pointer;
  padding: 10px;
}

.geBaseButton:hover {
  background: #ececec;
}

.geBigButton {
  background-color: #0052cc;
  border: none;
  border-radius: 3px;
  color: #fff;
  font-size: 14px;
  overflow: hidden;
  padding: 4px 10px;
  text-overflow: ellipsis;
  transition: background-color 0.1s ease-out;
  white-space: nowrap;
}

.geBigButton:hover {
  background-color: #0065ff;
}

.geBigButton:active {
  background-color: #0747a6;
}

html body .geBigStandardButton {
  background-color: rgba(9, 30, 66, 0.08);
  color: #344563;
}

html body .geBigStandardButton:hover {
  background-color: rgba(9, 30, 66, 0.13);
}

html body .geBigStandardButton:active {
  background-color: #f8c382;
  color: #600000;
}

@media print {
  div.geNoPrint { display: none !important; }
}
.geSprite-actualsize { background-position: 0 0; }
.geSprite-bold { background-position: 0 -46px; }
.geSprite-bottom { background-position: 0 -92px; }
.geSprite-center { background-position: 0 -138px; }
.geSprite-delete { background-position: 0 -184px; }
.geSprite-fillcolor { background-position: 0 -229px; }
.geSprite-fit { background-position: 0 -277px; }
.geSprite-fontcolor { background-position: 0 -322px; }
.geSprite-gradientcolor { background-position: 0 -368px; }
.geSprite-image { background-position: 0 -414px; }
.geSprite-italic { background-position: 0 -460px; }
.geSprite-left { background-position: 0 -505px; }
.geSprite-middle { background-position: 0 -552px; }
.geSprite-print { background-position: 0 -598px; }
.geSprite-redo { background-position: 0 -644px; }
.geSprite-right { background-position: 0 -689px; }
.geSprite-shadow { background-position: 0 -735px; }
.geSprite-strokecolor { background-position: 0 -782px; }
.geSprite-top { background-position: 0 -828px; }
.geSprite-underline { background-position: 0 -874px; }
.geSprite-undo { background-position: 0 -920px; }
.geSprite-zoomin { background-position: 0 -966px; }
.geSprite-zoomout { background-position: 0 -1012px; }
.geSprite-arrow { background-position: 0 -1059px; }
.geSprite-linkedge { background-position: 0 -1105px; }
.geSprite-straight { background-position: 0 -1150px; }
.geSprite-entity { background-position: 0 -1196px; }
.geSprite-orthogonal { background-position: 0 -1242px; }
.geSprite-curved { background-position: 0 -1288px; }
.geSprite-noarrow { background-position: 0 -1334px; }
.geSprite-endclassic { background-position: 0 -1380px; }
.geSprite-endopen { background-position: 0 -1426px; }
.geSprite-endblock { background-position: 0 -1472px; }
.geSprite-endoval { background-position: 0 -1518px; }
.geSprite-enddiamond { background-position: 0 -1564px; }
.geSprite-endthindiamond { background-position: 0 -1610px; }
.geSprite-endclassictrans { background-position: 0 -1656px; }
.geSprite-endblocktrans { background-position: 0 -1702px; }
.geSprite-endovaltrans { background-position: 0 -1748px; }
.geSprite-enddiamondtrans { background-position: 0 -1794px; }
.geSprite-endthindiamondtrans { background-position: 0 -1840px; }
.geSprite-startclassic { background-position: 0 -1886px; }
.geSprite-startopen { background-position: 0 -1932px; }
.geSprite-startblock { background-position: 0 -1978px; }
.geSprite-startoval { background-position: 0 -2024px; }
.geSprite-startdiamond { background-position: 0 -2070px; }
.geSprite-startthindiamond { background-position: 0 -2116px; }
.geSprite-startclassictrans { background-position: 0 -2162px; }
.geSprite-startblocktrans { background-position: 0 -2208px; }
.geSprite-startovaltrans { background-position: 0 -2254px; }
.geSprite-startdiamondtrans { background-position: 0 -2300px; }
.geSprite-startthindiamondtrans { background-position: 0 -2346px; }
.geSprite-globe { background-position: 0 -2392px; }
.geSprite-orderedlist { background-position: 0 -2438px; }
.geSprite-unorderedlist { background-position: 0 -2484px; }
.geSprite-horizontalrule { background-position: 0 -2530px; }
.geSprite-link { background-position: 0 -2576px; }
.geSprite-indent { background-position: 0 -2622px; }
.geSprite-outdent { background-position: 0 -2668px; }
.geSprite-code { background-position: 0 -2714px; }
.geSprite-fontbackground { background-position: 0 -2760px; }
.geSprite-removeformat { background-position: 0 -2806px; }
.geSprite-superscript { background-position: 0 -2852px; }
.geSprite-subscript { background-position: 0 -2898px; }
.geSprite-table { background-position: 0 -2944px; }
.geSprite-deletecolumn { background-position: 0 -2990px; }
.geSprite-deleterow { background-position: 0 -3036px; }
.geSprite-insertcolumnafter { background-position: 0 -3082px; }
.geSprite-insertcolumnbefore { background-position: 0 -3128px; }
.geSprite-insertrowafter { background-position: 0 -3174px; }
.geSprite-insertrowbefore { background-position: 0 -3220px; }
.geSprite-grid { background-position: 0 -3272px; }
.geSprite-guides { background-position: 0 -3324px; }
.geSprite-dots { background-position: 0 -3370px; }
.geSprite-alignleft { background-position: 0 -3416px; }
.geSprite-alignright { background-position: 0 -3462px; }
.geSprite-aligncenter { background-position: 0 -3508px; }
.geSprite-aligntop { background-position: 0 -3554px; }
.geSprite-alignbottom { background-position: 0 -3600px; }
.geSprite-alignmiddle { background-position: 0 -3646px; }
.geSprite-justifyfull { background-position: 0 -3692px; }
.geSprite-formatpanel { background-position: 0 -3738px; }
.geSprite-connection { background-position: 0 -3784px; }
.geSprite-vertical { background-position: 0 -3830px; }
.geSprite-simplearrow { background-position: 0 -3876px; }
.geSprite-plus { background-position: 0 -3922px; }
.geSprite-rounded { background-position: 0 -3968px; }
.geSprite-toback { background-position: 0 -4014px; }
.geSprite-tofront { background-position: 0 -4060px; }
.geSprite-duplicate { background-position: 0 -4106px; }
.geSprite-insert { background-position: 0 -4152px; }
.geSprite-endblockthin { background-position: 0 -4201px; }
.geSprite-endblockthintrans { background-position: 0 -4247px; }
.geSprite-enderone { background-position: 0 -4293px; }
.geSprite-enderonetoone { background-position: 0 -4339px; }
.geSprite-enderonetomany { background-position: 0 -4385px; }
.geSprite-endermany { background-position: 0 -4431px; }
.geSprite-enderoneopt { background-position: 0 -4477px; }
.geSprite-endermanyopt { background-position: 0 -4523px; }
.geSprite-endclassicthin { background-position: 0 -4938px; }
.geSprite-endclassicthintrans { background-position: 0 -4984px; }
.geSprite-enddash { background-position: 0 -5029px; }
.geSprite-endcircleplus { background-position: 0 -5075px; }
.geSprite-endcircle { background-position: 0 -5121px; }
.geSprite-endasync { background-position: 0 -5167px; }
.geSprite-endasynctrans { background-position: 0 -5213px; }
.geSprite-startblockthin { background-position: 0 -4569px; }
.geSprite-startblockthintrans { background-position: 0 -4615px; }
.geSprite-starterone { background-position: 0 -4661px; }
.geSprite-starteronetoone { background-position: 0 -4707px; }
.geSprite-starteronetomany { background-position: 0 -4753px; }
.geSprite-startermany { background-position: 0 -4799px; }
.geSprite-starteroneopt { background-position: 0 -4845px; }
.geSprite-startermanyopt { background-position: 0 -4891px; }
.geSprite-startclassicthin { background-position: 0 -5259px; }
.geSprite-startclassicthintrans { background-position: 0 -5305px; }
.geSprite-startdash { background-position: 0 -5351px; }
.geSprite-startcircleplus { background-position: 0 -5397px; }
.geSprite-startcircle { background-position: 0 -5443px; }
.geSprite-startasync { background-position: 0 -5489px; }
.geSprite-startasynctrans { background-position: 0 -5535px; }
.geSprite-startcross { background-position: 0 -5581px; }
.geSprite-startopenthin { background-position: 0 -5627px; }
.geSprite-startopenasync { background-position: 0 -5673px; }
.geSprite-endcross { background-position: 0 -5719px; }
.geSprite-endopenthin { background-position: 0 -5765px; }
.geSprite-endopenasync { background-position: 0 -5811px; }
.geSprite-verticalelbow { background-position: 0 -5857px; }
.geSprite-horizontalelbow { background-position: 0 -5903px; }
.geSprite-horizontalisometric { background-position: 0 -5949px; }
.geSprite-verticalisometric { background-position: 0 -5995px; }

.geSvgSprite {
  background-position: center center;
}

.geFlipSprite {
  transform: scaleX(-1);
}

.geSprite-box {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='10' transform='translate(0.5,0.5)'><rect stroke='black' fill='none' x='2' y='2' width='6' height='6'/><path stroke='black' d='M8 5 L 18 5'/></svg>");
}

.geSprite-halfCircle {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='10' transform='translate(0.5,0.5)'><path stroke='black' fill='none' d='M 2 2 Q 6 2 6 5 Q 6 8 2 8 M 6 5 L 18 5'/></svg>");
}

html div.mxRubberband {
  background: #9cf;
  border-color: #00d;
}

td.mxPopupMenuIcon div {
  height: 16px;
  width: 16px;
}

.geEditor div.mxPopupMenu {
  background: white;
  border: none;
  border-radius: 4px;
  box-shadow: 0 2px 6px 2px rgba(60, 64, 67, 0.15);
  padding: 3px;
}

html table.mxPopupMenu {
  border-collapse: collapse;
  margin: 0;
}

html td.mxPopupMenuItem {
  font-size: 10pt;
  padding: 7px 30px;
}

html td.mxPopupMenuIcon {
  background-color: white;
  padding: 0;
}

td.mxPopupMenuIcon .geIcon {
  border: 1px solid transparent;
  margin: 2px;
  opacity: 0.5;
  padding: 2px;
  padding-bottom: 4px;
}

td.mxPopupMenuIcon .geIcon:hover {
  border: 1px solid gray;
  border-radius: 2px;
  opacity: 1;
}

html tr.mxPopupMenuItemHover {
  background-color: #eee;
  color: black;
}

table.mxPopupMenu hr {
  background-color: #ccc;
  border: none;
  color: #ccc;
  height: 1px;
}

table.mxPopupMenu tr {
  font-size: 4pt;
}

html td.mxWindowTitle {
  color: rgb(112, 112, 112);
  font-size: 12px;
  padding: 4px;
  text-align: left;
}

.gePropHeader,
.gePropRow {
  border: 1px solid #e9e9e9;
}

.gePropRowDark {
  border: 1px solid #4472c4;
}

.gePropHeader > .gePropHeaderCell {
  border-bottom: 0;
  border-top: 0;
  text-align: left;
  width: 50%;
}

.gePropHeader > .gePropHeaderCell:first-child {
  border-left: none;
}

.gePropHeader > .gePropHeaderCell:last-child {
  border-right: none;
}

.gePropHeader {
  background: #e5e5e5;
  color: black;
}

.gePropRowCell {
  border-left: 1px solid #f3f3f3;
  width: 50%;
}

.gePropRow > .gePropRowCell {
  background: #fff;
}

.gePropRowAlt > .gePropRowCell {
  background: #fcfcfc;
}

.gePropRowDark > .gePropRowCell {
  background: #fff;
  color: #305496;
  font-weight: bold;
}

.gePropRowDarkAlt > .gePropRowCell {
  background: #d9e1f2;
  color: #305496;
  font-weight: bold;
}

.gePropEditor input:invalid {
  border: 1px solid red;
}

/* Templates dialog css */
.geTemplateDlg {
  height: 712px;
  width: 987px;
}

.geTemplateDlg ::-webkit-scrollbar {
  height: 12px;
  width: 12px;
}

.geTemplateDlg ::-webkit-scrollbar-track {
  background: whitesmoke;
  box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.1);
}

.geTemplateDlg ::-webkit-scrollbar-thumb {
  background: #c5c5c5;
  border: whitesmoke solid 3px;
  border-radius: 10px;
}

.geTemplateDlg ::-webkit-scrollbar-thumb:hover {
  background: #b5b5b5;
}

.geTempDlgHeader {
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 5px 5px 0 0;
  box-sizing: border-box;
  height: 62px;
  width: 100%;
}

.geTempDlgHeaderLogo {
  height: 34px;
  margin: 14px 14px 14px 20px;
}

.geTempDlgSearchBox {
  /* background: url('../images/icon-search.svg') no-repeat; */
  background-color: #fff;
  background-position: 15px;
  border: 1px solid #ccc;
  border-radius: 3px;
  color: #888;
  float: right;
  font-size: 15px;
  height: 40px;
  line-height: 36px;
  margin: 11px 36px 0 0;
  max-width: 400px;
  outline: medium none;
  padding: 0 0 0 36px;
  text-shadow: 1px 1px 0 white;
  width: 40%;
}

.geTemplatesList {
  background-color: #fff;
  border: 1px solid #ccc;
  box-sizing: border-box;
  display: inline-block;
  height: calc(100% - 118px);
  overflow-x: hidden;
  overflow-y: auto;
  width: 20%;
}

.geTempDlgContent {
  background-color: #fff;
  border: 1px solid #ccc;
  box-sizing: border-box;
  display: inline-block;
  height: calc(100% - 118px);
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  width: 80%;
}

.geTempDlgFooter {
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 0 0 5px 5px;
  box-sizing: border-box;
  font-size: 14px;
  height: 52px;
  line-height: 17px;
  padding-top: 11px;
  text-align: right;
  width: 100%;
}

.geTempDlgCreateBtn {
  background-color: #3d72ad;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  padding: 6px;
  text-align: center;
  width: 67px;
}

.geTempDlgCancelBtn {
  color: #3d72ad;
  cursor: pointer;
  display: inline-block;
  padding: 6px;
  text-align: center;
  width: 67px;
}

.geTempDlgCancelBtn:active,
.geTempDlgCreateBtn:active,
.geTempDlgShowAllBtn:active {
  transform: translateY(2px);
}

.geTempDlgCreateBtnDisabled {
  background-color: #9fbddd;
}

.geTempDlgCreateBtnDisabled:active {
  transform: translateY(0);
}

.geTempDlgCreateBtnBusy {
  /* background-image: url(../images/aui-wait.gif); */
  background-position: 62px 7px;
  background-repeat: no-repeat;
}

.geTempDlgNewDiagramlbl {
  color: #333;
  cursor: pointer;
  font-size: 14px;
  font-weight: bold;
  height: 17px;
  line-height: 17px;
  padding: 25px 0 0 20px;
}

.geTempDlgHLine {
  background-color: #ccc;
  height: 1px;
  margin: 20px 0 0 11px;
  width: calc(100% - 22px);
}

.geTemplatesLbl {
  color: #6d6d6d;
  font-size: 14px;
  font-weight: bold;
  height: 17px;
  line-height: 17px;
  margin: 20px 0 3px 20px;
  text-transform: uppercase;
}

.geTemplateCatLink {
  color: #3d72ad;
  cursor: pointer;
  font-size: 14px;
  height: 17px;
  line-height: 17px;
  margin: 12px 0 0 20px;
}

.geTempDlgNewDiagramCat {
  background-color: #555;
  height: 280px;
  width: 100%;
}

.geTempDlgNewDiagramCatLbl {
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  height: 17px;
  line-height: 17px;
  padding: 25px 0 0 20px;
  text-transform: uppercase;
}

.geTempDlgNewDiagramCatList {
  box-sizing: border-box;
  height: 190px;
  overflow-x: hidden;
  overflow-y: auto;
  padding-left: 9px;
  width: 100%;
}

.geTempDlgNewDiagramCatFooter {
  width: 100%;
}

.geTempDlgShowAllBtn {
  border: 1px solid #777;
  border-radius: 3px;
  color: #ddd;
  cursor: pointer;
  float: right;
  font-size: 14px;
  line-height: 17px;
  margin-right: 30px;
  padding: 4px;
  text-align: center;
  width: 78px;
}

.geTempDlgNewDiagramCatItem {
  display: inline-block;
  height: 155px;
  padding: 18px 6px 0 9px;
  width: 134px;
}

.geTempDlgNewDiagramCatItemImg {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  cursor: pointer;
  display: table-cell;
  height: 134px;
  text-align: center;
  vertical-align: middle;
  width: 134px;
}

.geTempDlgNewDiagramCatItemActive > .geTempDlgNewDiagramCatItemImg {
  border: 4px solid #3d72ad;
}

.geTempDlgNewDiagramCatItemLbl {
  color: #fff;
  cursor: pointer;
  font-size: 14px;
  height: 17px;
  line-height: 17px;
  padding-top: 4px;
  text-align: center;
  width: 100%;
}

.geTempDlgDiagramsList {
  background-color: #e5e5e5;
  box-sizing: border-box;
  box-sizing: border-box;
  min-height: calc(100% - 280px);
  padding-left: 9px;
  width: 100%;
}

.geTempDlgDiagramsListHeader {
  box-sizing: border-box;
  height: 45px;
  padding: 18px 20px 0 11px;
  width: 100%;
}

.geTempDlgDiagramsListTitle {
  box-sizing: border-box;
  color: #666;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  height: 17px;
  line-height: 17px;
  padding-top: 5px;
  text-transform: uppercase;
}

.geTempDlgDiagramsListBtns {
  float: right;
  margin-top: -9px;
}

.geTempDlgRadioBtn {
  background-color: #555;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  line-height: 17px;
  padding: 4px;
  text-align: center;
}

.geTempDlgRadioBtnActive {
  background-color: #fff;
  color: #333;
}

.geTempDlgRadioBtnLarge {
  height: 27px;
  width: 120px;
}

/* TODO is there a better way for these buttons */
.geTempDlgRadioBtnSmall {
  height: 27px;
  position: relative;
  top: 9px;
  width: 27px;
}

.geTempDlgRadioBtnSmall img {
  height: 13px;
  left: 6px;
  position: absolute;
  top: 6px;
  width: 13px;
}

.geTempDlgSpacer {
  display: inline-block;
  width: 10px;
}

.geTempDlgDiagramsListGrid {
  border-spacing: 0;
  box-sizing: border-box;
  font-size: 13px;
  padding: 0 20px 20px 10px;
  white-space: nowrap;
  width: 100%;
}

.geTempDlgDiagramsListGrid tr {
  height: 40px;
}

.geTempDlgDiagramsListGrid th {
  background-color: #e5e5e5;
  border-bottom: 1px solid #ccc;
  color: #8e8e8e;
  font-size: 14px;
  font-weight: bold;
  padding: 5px;
  text-align: left;
}

.geTempDlgDiagramsListGrid td {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  color: #888;
  overflow: hidden;
  padding: 5px;
}

.geTempDlgDiagramsListGridActive td {
  border-bottom: 2px solid #3d72ad;
  border-top: 2px solid #3d72ad;
}

.geTempDlgDiagramsListGridActive td:first-child {
  border-left: 2px solid #3d72ad;
}

.geTempDlgDiagramsListGridActive td:last-child {
  border-right: 2px solid #3d72ad;
}

.geTempDlgDiagramTitle {
  color: #666 !important;
  font-weight: bold;
}

.geTempDlgDiagramsTiles {
  min-height: 100px;
  position: relative;
}

.geTempDlgDiagramTile {
  display: inline-block;
  height: 152px;
  padding: 20px 7px 0 10px;
  position: relative;
  width: 130px;
}

.geTempDlgDiagramTileImg {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  display: table-cell;
  height: 130px;
  text-align: center;
  vertical-align: middle;
  width: 130px;
}

.geTempDlgDiagramTileImgLoading {
  /* background-image: url(../images/aui-wait.gif); */
  background-position: center;
  background-repeat: no-repeat;
}

.geTempDlgDiagramTileImgError {
  background-color: #be3730;

  /* background-image: url(../images/broken.png); */
  background-position: center;
  background-repeat: no-repeat;
}

.geTempDlgDiagramTileImg img {
  cursor: pointer;
  max-height: 117px;
  max-width: 117px;
}

.geTempDlgDiagramTileActive > .geTempDlgDiagramTileImg {
  border: 4px solid #3d72ad;
}

.geTempDlgDiagramTileLbl {
  color: #333;
  cursor: pointer;
  font-size: 14px;
  height: 17px;
  line-height: 17px;
  padding-top: 5px;
  text-align: center;
  width: 100%;
}

.geTempDlgDiagramPreviewBtn {
  cursor: pointer;
  position: absolute;
  right: 15px;
  top: 28px;
}

.geTempDlgDiagramListPreviewBtn {
  cursor: pointer;
  padding-left: 5px;
  padding-right: 15px;
}

.geTempDlgDiagramPreviewBox {
  background: white;
  border: 4px solid #3d72ad;
  border-radius: 6px;
  box-sizing: border-box;
  display: table-cell;
  height: 94%;
  left: 10%;
  position: absolute;
  text-align: center;
  top: 3%;
  vertical-align: middle;
  width: 80%;
  z-index: 2;
}

.geTempDlgDialogMask {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}

.geTempDlgDiagramPreviewBox img {
  max-height: 95%;
  max-width: 95%;
  vertical-align: middle;
}

.geTempDlgPreviewCloseBtn {
  cursor: pointer;
  position: absolute;
  right: 5px;
  top: 5px;
}

.geTempDlgLinkToDiagramHint {
  color: #555;
}

.geTempDlgLinkToDiagramBtn {
  color: #555;
  font-size: 14px;
  height: 27px;
  margin: 0 10px;
}

/* Comments CSS */
.geCommentsWin {
  border: 1px solid whitesmoke;
  height: 100%;
  margin-bottom: 10px;
  overflow: auto;
  user-select: none;
}

.geCommentsToolbar {
  border-color: #c3c3c3;
  border-style: solid;
  border-width: 1px 0 0;
  bottom: 0;
  display: block;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  white-space: nowrap;
}

.geCommentsList {
  left: 0;
  overflow: auto;
  position: absolute;
  right: 0;
  top: 0;
}

.geCommentContainer {
  background-color: white;
  border-color: #c3c3c3;
  border-radius: 10px;
  border-style: solid;
  border-width: 0 0 1px;
  box-shadow: 2px 2px 6px rgba(60, 64, 67, 0.15);
  color: #3c4043;
  display: block;
  margin: 5px;
  min-height: 50px;
  padding: 12px;
  position: relative;
  white-space: nowrap;
}

.geCommentHeader {
  height: 32px;
  width: 100%;
}

.geCommentUserImg {
  background-color: whitesmoke;
  border-radius: 50%;
  float: left;
  height: 32px;
  width: 32px;
}

.geCommentHeaderTxt {
  height: 32px;
  overflow: hidden;
  padding-left: 5px;
}

.geCommentUsername {
  font-size: 15px;
  font-weight: bold;
  height: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.geCommentDate {
  color: #707070;
  font-size: 11px;
  height: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.geCommentDate::first-letter {
  text-transform: uppercase;
}

.geCommentTxt {
  font-size: 14px;
  min-height: 12px;
  padding-top: 5px;
  white-space: normal;
}

.geCommentEditTxtArea {
  box-sizing: border-box;
  font-size: 14px !important;
  margin-top: 5px;
  max-width: 100%;
  min-height: 12px;
  min-width: 100%;
  width: 100%;
}

.geCommentEditBtns {
  box-sizing: border-box;
  height: 20px;
  padding-top: 5px;
  width: 100%;
}

.geCommentEditBtn {
  float: right !important;
  margin-left: 5px;
  padding: 3px 8px !important;
}

.geCommentActions {
  color: #707070;
  font-size: 12px;
}

.geCommentActionsList {
  list-style-type: disc;
  margin: 0;
  padding: 10px 0 0;
}

.geCommentAction {
  display: inline-block;
  padding: 0;
}

.geCommentAction::before {
  content: '\2022';
  padding: 5px;
}

.geCommentAction:first-child::before {
  content: '';
  padding: 0;
}

.geCommentActionLnk {
  color: #707070;
  cursor: pointer;
  text-decoration: none;
}

.geCommentActionLnk:hover {
  text-decoration: underline;
}

.geCheckedBtn {
  background-color: #ccc;
  border-left: 1px solid black !important;
  border-top: 1px solid black !important;
}

.geCommentBusyImg {
  position: absolute;
  right: 5px;
  top: 5px;
}

.geAspectDlgListItem {
  border: 3px solid #f0f0f0;
  border-radius: 5px;
  display: inline-block;
  height: 120px;
  margin: 2px 2px 20px;
  padding: 5px;
  width: 120px;
}

.geAspectDlgListItem:hover {
  border: 3px solid #c5c5c5;
}

.geAspectDlgListItemSelected {
  border: 3px solid #3b73af;
}

.geAspectDlgListItemSelected:hover {
  border: 3px solid #405a86;
}

.geAspectDlgListItemText {
  margin-top: 10px;
  max-width: 100%;
  min-height: 2em;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
}

.geAspectDlgList {
  min-height: 184px;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}
